package com.smedi.ismedi.progress.core.application.service;

import com.smedi.ismedi.progress.core.application.command.ProgressReviewProjectCommand;
import com.smedi.ismedi.progress.core.domain.aggregatemodel.Progress;

/**
 * 进度管理应用服务接口
 *
 * @author pengyan
 * @date 2022/09/19
 */
public interface ProgressApplicationService {

    /**
     * 进度计划流程定义
     *
     * @param progress 进度计划参数
     */
    void progressWorkorder(Progress progress);

    /**
     * 进度计划-版本管理 主体院审批
     * @param progressReviewProjectCommand
     * @return Progress
     */
    Progress reviewPojectProgress(ProgressReviewProjectCommand progressReviewProjectCommand);

    /**
     * 进度计划-版本管理 工程部审批
     * @param progressReviewProjectCommand
     * @return
     */
    Progress reviewPojectProgressInstitution(ProgressReviewProjectCommand progressReviewProjectCommand);

    void cancelPojectProgress(Progress progress);
}
